home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CD ROM Paradise Collection 4
/
CD ROM Paradise Collection 4 1995 Nov.iso
/
arcers
/
tar316.zip
/
PCLEVEL.ASM
< prev
next >
Wrap
Assembly Source File
|
1980-07-24
|
1KB
|
77 lines
include farnear.inc
_TEXT segment byte public 'CODE'
assume cs:_TEXT
program _getkey
; int getkey(void)
l1: mov ah,1
int 16h
mov ah,0
jz short l2
int 16h
jmp short l1
l2: int 16h
xor ah,ah
ret
_getkey endp
program _diskserv
; int diskserv(int op, int drive, int head, int track, int sector,
; int nsects, void far *buffer)
push bp
mov bp,sp
mov ah,arglist[0] ; operation
mov al,arglist[10] ; number of sectors
mov cx,arglist[6] ; track number
; and ch,3 ; must not need for valid number
ror ch,1
ror ch,1
xchg ch,cl
; mov dl,arglist[8] ; sector number
; and dl,3fh ; must not need for valid number
; or cl,dl
or cl,arglist[8] ; sector number
mov dl,arglist[2] ; drive number
mov dh,arglist[4] ; head number
cmp ah,8 ; get drive params?
je short eight
les bx,arglist[12] ; buffer address
int 13h
jc short end
xor ah,ah
jmp short end
eight:
push di
int 13h
jc short finish
les di,arglist[12] ; buffer address
xor ah,ah
mov al,dl
stosw ; number of disks
mov al,dh
stosw ; max head number
mov dl,cl
mov ax,cx
xchg ah,al
mov cl,6
shr ah,cl
stosw ; max cylinder number
mov al,dl
and ax,3fh
stosw ; max sector number
finish: ; Note: AH = error code
pop di
end:
mov al,ah
xor ah,ah
pop bp
ret
_diskserv endp
_TEXT ends
end